import 'package:seedfour/generated/json/base/json_field.dart';
import 'package:seedfour/generated/json/alloc_detail_entity.g.dart';
import 'dart:convert';
export 'package:seedfour/generated/json/alloc_detail_entity.g.dart';

@JsonSerializable()
class AllocDetailEntity {
	AllocDetailOrderInfo? orderInfo;
	AllocDetailCaseInfo? caseInfo;
	AllocDetailAllocContent? allocContent;

	AllocDetailEntity();

	factory AllocDetailEntity.fromJson(Map<String, dynamic> json) => $AllocDetailEntityFromJson(json);

	Map<String, dynamic> toJson() => $AllocDetailEntityToJson(this);

	@override
	String toString() {
		return jsonEncode(this);
	}
}

@JsonSerializable()
class AllocDetailOrderInfo {
	String? id;
	String? name;
	int? orderAmount;
	int? status;
	bool? isOwner;
	String? settleName;
	AllocDetailOrderInfoInvoice? invoice;

	AllocDetailOrderInfo();

	factory AllocDetailOrderInfo.fromJson(Map<String, dynamic> json) => $AllocDetailOrderInfoFromJson(json);

	Map<String, dynamic> toJson() => $AllocDetailOrderInfoToJson(this);

	@override
	String toString() {
		return jsonEncode(this);
	}
}

@JsonSerializable()
class AllocDetailOrderInfoInvoice {
	String? cargo;
	String? showTab;
	String? email;
	List<AllocDetailOrderInfoInvoiceRelateCases>? relateCases;

	AllocDetailOrderInfoInvoice();

	factory AllocDetailOrderInfoInvoice.fromJson(Map<String, dynamic> json) => $AllocDetailOrderInfoInvoiceFromJson(json);

	Map<String, dynamic> toJson() => $AllocDetailOrderInfoInvoiceToJson(this);

	@override
	String toString() {
		return jsonEncode(this);
	}
}

@JsonSerializable()
class AllocDetailOrderInfoInvoiceRelateCases {
	String? caseId;
	String? caseName;

	AllocDetailOrderInfoInvoiceRelateCases();

	factory AllocDetailOrderInfoInvoiceRelateCases.fromJson(Map<String, dynamic> json) => $AllocDetailOrderInfoInvoiceRelateCasesFromJson(json);

	Map<String, dynamic> toJson() => $AllocDetailOrderInfoInvoiceRelateCasesToJson(this);

	@override
	String toString() {
		return jsonEncode(this);
	}
}

@JsonSerializable()
class AllocDetailCaseInfo {
	String? id;
	String? title;
	int? updatedAt;
	String? collectionDate;
	int? orderAmount;
	String? agentUid;
	String? agentUsername;
	String? updatedAtStr;
	String? orderAmountStr;

	AllocDetailCaseInfo();

	factory AllocDetailCaseInfo.fromJson(Map<String, dynamic> json) => $AllocDetailCaseInfoFromJson(json);

	Map<String, dynamic> toJson() => $AllocDetailCaseInfoToJson(this);

	@override
	String toString() {
		return jsonEncode(this);
	}
}

@JsonSerializable()
class AllocDetailAllocContent {
	List<AllocDetailAllocContentPlans>? plans;
	int? status;
	int? createDate;
	AllocDetailAllocContentOrder? order;
	AllocDetailAllocContentRemain? remain;
	List<AllocDetailAllocContentCplans>? cplans;
	AllocDetailAllocContentAlloc? alloc;

	AllocDetailAllocContent();

	factory AllocDetailAllocContent.fromJson(Map<String, dynamic> json) => $AllocDetailAllocContentFromJson(json);

	Map<String, dynamic> toJson() => $AllocDetailAllocContentToJson(this);

	@override
	String toString() {
		return jsonEncode(this);
	}
}

@JsonSerializable()
class AllocDetailAllocContentPlans {
	List<AllocDetailAllocContentPlansAlloc>? alloc;
	int? totalAmount;
	int? totalPercent;
	int? planStatus;
	String? approveDate;
	String? approveRemark;
	List<dynamic>? attaches;
	String? approveUid;

	AllocDetailAllocContentPlans();

	factory AllocDetailAllocContentPlans.fromJson(Map<String, dynamic> json) => $AllocDetailAllocContentPlansFromJson(json);

	Map<String, dynamic> toJson() => $AllocDetailAllocContentPlansToJson(this);

	@override
	String toString() {
		return jsonEncode(this);
	}
}

@JsonSerializable()
class AllocDetailAllocContentPlansAlloc {
	String? uid;
	int? percent;
	int? amount;
	String? mobile;
	String? name;
	String? id;

	AllocDetailAllocContentPlansAlloc();

	factory AllocDetailAllocContentPlansAlloc.fromJson(Map<String, dynamic> json) => $AllocDetailAllocContentPlansAllocFromJson(json);

	Map<String, dynamic> toJson() => $AllocDetailAllocContentPlansAllocToJson(this);

	@override
	String toString() {
		return jsonEncode(this);
	}
}

@JsonSerializable()
class AllocDetailAllocContentOrder {
	String? title;
	int? orderAmount;
	int? collectionDate;
	String? agentUsername;

	AllocDetailAllocContentOrder();

	factory AllocDetailAllocContentOrder.fromJson(Map<String, dynamic> json) => $AllocDetailAllocContentOrderFromJson(json);

	Map<String, dynamic> toJson() => $AllocDetailAllocContentOrderToJson(this);

	@override
	String toString() {
		return jsonEncode(this);
	}
}

@JsonSerializable()
class AllocDetailAllocContentRemain {
	double? amount;
	int? available;

	AllocDetailAllocContentRemain();

	factory AllocDetailAllocContentRemain.fromJson(Map<String, dynamic> json) => $AllocDetailAllocContentRemainFromJson(json);

	Map<String, dynamic> toJson() => $AllocDetailAllocContentRemainToJson(this);

	@override
	String toString() {
		return jsonEncode(this);
	}
}

@JsonSerializable()
class AllocDetailAllocContentCplans {
	int? type;
	int? totalAmount;
	int? totalPercent;
	String? createDate;
	String? remark;
	List<AllocDetailAllocContentCplansPlans>? plans;

	AllocDetailAllocContentCplans();

	factory AllocDetailAllocContentCplans.fromJson(Map<String, dynamic> json) => $AllocDetailAllocContentCplansFromJson(json);

	Map<String, dynamic> toJson() => $AllocDetailAllocContentCplansToJson(this);

	@override
	String toString() {
		return jsonEncode(this);
	}
}

@JsonSerializable()
class AllocDetailAllocContentCplansPlans {
	int? type;
	int? amount;
	int? percent;
	String? createDate;
	String? remark;

	AllocDetailAllocContentCplansPlans();

	factory AllocDetailAllocContentCplansPlans.fromJson(Map<String, dynamic> json) => $AllocDetailAllocContentCplansPlansFromJson(json);

	Map<String, dynamic> toJson() => $AllocDetailAllocContentCplansPlansToJson(this);

	@override
	String toString() {
		return jsonEncode(this);
	}
}

@JsonSerializable()
class AllocDetailAllocContentAlloc {
	int? amount;
	int? percent;

	AllocDetailAllocContentAlloc();

	factory AllocDetailAllocContentAlloc.fromJson(Map<String, dynamic> json) => $AllocDetailAllocContentAllocFromJson(json);

	Map<String, dynamic> toJson() => $AllocDetailAllocContentAllocToJson(this);

	@override
	String toString() {
		return jsonEncode(this);
	}
}